package com.xebest.web.mapper.read;

import com.xebest.web.model.XeVenStoreCoverAreaEntity;
import com.xebest.web.view.VenStoreRepeatCoverAreaView;
import com.xebest.web.view.XeVenStoreCoverAreaView;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

public interface XeVenStoreCoverAreaReadMapper {

    /**
     * 统计仓库的覆盖区域数量
     *
     * @author 杜春静
     */
    long countByCoverArea(XeVenStoreCoverAreaEntity example);

    /**
     * 根据仓库信息查询覆盖区域信息
     *
     * @author 杜春静
     */
    List<XeVenStoreCoverAreaEntity> listByCoverArea(XeVenStoreCoverAreaEntity coverArea);

    /**
     * 查询出其他仓库的覆盖区域
     *
     * @author 杜春静
     */
    List<VenStoreRepeatCoverAreaView> listOtherStoreCoverArea(Map<String, Object> params);

    /**
     * 查询出该仓库下的覆盖区域
     *
     * @author 杜春静
     */
    String[] judgeEnableStore(Map<String, Object> params);

    /**
     * 根据仓库编码查询仓库覆盖区域
     *
     * @author 杜春静
     */
    List<XeVenStoreCoverAreaEntity> listCoverAreaByStoreId(@Param("storeId") String storeId);

    /**
     * 回显时的仓库覆盖区域
     *
     * @author 杜春静
     */
    List<XeVenStoreCoverAreaView> listCoverAreaViewByStoreId(@Param("storeId") String storeId);

    /**
     * 查询覆盖区域信息
     *
     * @author 杜春静
     */
    XeVenStoreCoverAreaEntity getCoverAreaByParam(XeVenStoreCoverAreaEntity coverArea);

}